/*
 * Message.h
 *
 *  Created on: 6 mei 2013
 *      Author: Wietse
 */

#ifndef MESSAGE_H_
#define MESSAGE_H_

#include "Definitions.h"
#include "Position.h"
#include "Data.h"

#include <windows.h>
#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>

// Fix for using Swarm
class Swarm;

class Message {
private:
	Position	position;
	int			frame;
	Component	sourceType;
	int			senderID;
	Data		data;

	void 		printSourceType();
public:
	Message();
	Message(Component, int, Position&, Data&);
	virtual ~Message();

	Position	getStart();
	Component	getSourceType();
	int			getSenderID();
	Data		getData();
	bool		inRange(Position *);
	void		update(Swarm *);

	void		printMessage();
};

#endif /* MESSAGE_H_ */
